package snailAI.Entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

/**
 * 用户表实体类（显式指定所有列名映射）
 */
@Data
@TableName(value = "user") // 显式指定对应的数据表名
public class User {

    /**
     * 主键ID（对应数据表列名：id）
     */
    @TableId(value = "id", type = IdType.AUTO) // 显式指定主键列名
    private Integer id;

    /**
     * 爱好ID（对应数据表列名：hobby_id）
     */
    @TableField(value = "hobby_id") // 显式指定列名（下划线转驼峰场景必须声明）
    private Integer hobbyId;

    /**
     * 密码（对应数据表列名：password）
     */
    @TableField(value = "password") // 即使名称一致，也显式声明列名
    private String password;

    /**
     * 用户名（对应数据表列名：username）
     */
    @TableField(value = "username") // 即使名称一致，也显式声明列名
    private String username;
}